package com.atgm.mall.gmmallcart.Service;

import com.atgm.mall.gmmallcart.entity.GameShoppingEntity;
import com.atgm.mall.gmmallcart.vo.req.CartRemoveReqVo;
import com.atgm.mall.gmmallcart.vo.req.GameCartReqVo;
import com.atgm.mall.gmmallcart.vo.req.MemberWishReqVo;
import com.atgm.mall.gmmallcart.vo.resp.GameCartRespVo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface GameShoppingService extends IService<GameShoppingEntity> {

    /**
     * 添加购物车商品
     * @param gameCartReqVo
     */
    void saveCart(GameCartReqVo gameCartReqVo);

    /**
     * 获取用户的购物车商品数量
     * @return
     */
    Long queryCartNum();

    /**
     * 获取购物车商品列表
     * @return
     */
    List<GameCartRespVo> querCartList();

    /**
     * 添加心愿单
     * @param memberWishReqVo
     */
    void addWishInCartPage(MemberWishReqVo memberWishReqVo);

    /**
     * 删除购物车信息
     * @param gameId
     */
    void deleteCartInfo(Long gameId);

    /**
     * 删除用户提交订单之后的购物车商品信息
     * @param cartRemoveReqVo
     */
    void removeCartByMemberId(CartRemoveReqVo cartRemoveReqVo);
}
